package com.tedu.show;

public class GameConstants {
    private GameConstants() {} // 防止实例化

    // Debug模式设置
    public static final boolean DEBUG_MODE = false;
//    public static final boolean DEBUG_MODE = true;

    // 窗口设置
    public static final int WINDOW_WIDTH = 800;
    public static final int WINDOW_HEIGHT = 600;

    // 地图设置
    public static final int BOX_SIZE = 32;              // 素材图中每个格子的尺寸
    public static final int TILE_SIZE = 40;             // 单个瓦片的像素尺寸

    // 玩家设置
    public static final int PLAYER_SIZE = 40;           // 玩家的像素尺寸
    public static final int PLAYER_FRAME_COUNT = 3;     // 精灵图总帧数
    public static final int PLAYER_ANIMATION_SPEED = 10; // 动画速度（帧数/秒）

    public static final int PLAYER_BUBBLE_COUNT = 1;    // 泡泡数量
    public static final int PLAYER_BOMB_POWER = 1;      // 泡泡爆炸威力

    // 泡泡设置
    public static final int BUBBLE_SIZE = 35;

    public static final int BUBBLE_SPRITE_WIDTH = 32;   // 精灵图中每个泡泡帧的宽度
    public static final int BUBBLE_SPRITE_HEIGHT = 38;  // 精灵图中每个泡泡帧的高度
    public static final int BUBBLE_FRAME_COUNT = 4;     // 精灵图总帧数
    public static final int BUBBLE_ANIMATION_SPEED = 1; // 动画速度（帧数/秒）
    public static final long BUBBLE_EXPLOSION_DELAY = 3000L;
                                                        // 泡泡爆炸时间（毫秒）

    // 爆炸设置
    public static final int EXPLOSION_DURATION = 30;    // 爆炸持续时间（帧数）

    // 道具设置
    public static final int ITEM_SPRITE_WIDTH = 32;     // 精灵图中每个道具帧的宽度
    public static final int ITEM_SPRITE_HEIGHT = 48;    // 精灵图中每个道具帧的高度
    public static final int ITEM_FRAME_COUNT = 4;       // 精灵图总帧数
    public static final int ITEM_ANIMATION_SPEED = 150; // 动画速度（帧数/秒）

    // 音量设置
    public static final int DEFAULT_MUSIC_VOLUME = 30;  // 值域为 (0,100)
}
